package com.itxx.Keycase;

import com.itxx.Keycase.domain.Person;

import java.util.ArrayList;
import java.util.stream.Stream;

//男女演员题目练习 3
/*
 *   * 现在有两个ArrayList集合,分别存储6名男演员和6名女演员,要求完成如下操作:
 * 1.男演员只要名字为3个字的前3人.
 * 2.女演员只要姓林的,并且不要第一个.
 * 3.把过滤后的男演员和女演员合并到一起.
 * 4.*/
public class ActorDemo3 {
    public static void main(String[] args) {
        ArrayList<Person> maleActor = new ArrayList<>();
        maleActor.add(new Person("大木"));
        maleActor.add(new Person("张三丰"));
        maleActor.add(new Person("贾乃亮"));
        maleActor.add(new Person("李连杰"));
        maleActor.add(new Person("张艺兴"));
        maleActor.add(new Person("黄渤"));
        ArrayList<Person> femaleActor = new ArrayList<>();
        femaleActor.add(new Person("林黛玉"));
        femaleActor.add(new Person("刘亦菲"));
        femaleActor.add(new Person("林志玲"));
        femaleActor.add(new Person("林青霞"));
        femaleActor.add(new Person("林心如"));
        femaleActor.add(new Person("李冰冰"));
        femaleActor.add(new Person("林咏琳"));

        //男演员只要名字为3个字的前3人.
        maleActor.stream().filter(s->s.getName().length()==3).limit(3).forEach(s-> System.out.println(s));
        System.out.println("------");
        //女演员只要姓林的,并且不要第一个.
        femaleActor.stream().filter(s->s.getName().startsWith("林")).skip(1).forEach(s-> System.out.println(s));
        System.out.println("---------");
        Stream<Person> stream = Stream.concat(maleActor.stream().filter(s -> s.getName().length() == 3).limit(3), femaleActor.stream().filter(s -> s.getName().startsWith("林")).skip(1));
        stream.forEach(s-> System.out.println(s));


    }
}
